home *** CD-ROM | disk | FTP | other *** search
/ Software Vault: The Diamond Collection / The Diamond Collection (Software Vault)(Digital Impact).ISO / cdr29 / swmst091.zip / README.TXT < prev    next >
Text File  |  1995-02-21  |  9KB  |  224 lines

  1. NOTE: This is beta software.  Please don't run this program on
  2. machines that would get you in a lot of hot water if something goes
  3. wrong.  Please see the file TODO before filing a bug report and see if
  4. it isn't something that I'm already working on.
  5.  
  6.  
  7. Introduction
  8. ------------
  9.  
  10. Thank you for trying SwitchMaster.
  11.  
  12. SwitchMaster is a small utility that allows the user to control which
  13. tasks should/shouldn't be seen in the OS/2 Window List (CTRL+ESC),
  14. Jump Sequence (ALT+ESC), or both.
  15.  
  16. In this release, the options are limited to those tasks that usually
  17. cause the most annoyances when switching tasks under OS/2:
  18.  
  19.     o The LaunchPad (OS/2 Warp only)
  20.     o The OS/2 Desktop
  21.     o Folders opened up under the Desktop
  22.     o The Minimized Window Viewer
  23.     o The SwitchMaster Window
  24.  
  25. Later releases will allow user-defined windows to be controlled.
  26.  
  27.  
  28. Background
  29. ----------
  30.  
  31. I wrote SwitchMaster because I don't like having open folders included
  32. in the OS/2 Window List.  Trying not to re-invent the wheel, I
  33. evaluated some of the other 'Window List control' type utilities but
  34. none of them did exactly what I wanted them to do.  It seemed like the
  35. perfect reason to put all the money I've spent on OS/2 programming
  36. books to good use.  Now you get to enjoy the fruits of my labor.  As
  37. this is my first 'real' OS/2 program, I'd appreciate as much feedback
  38. as possible.
  39.  
  40. Aside from SwitchMaster being the first OS/2 PM program I've ever
  41. written, this is also the first utility I've felt is useful enough to
  42. release publicly for others to evaluate.  Taking that into account,
  43. please try to keep the flames to a minimum if/when you find a bug.
  44. The idea is to encourage me to keep on releasing new utilities for
  45. OS/2. :)
  46.  
  47.  
  48. Requirements
  49. ------------
  50.  
  51. SwitchMaster was written using the emx development system version 0.9a
  52. with the second series of fixes (emxfix02.zip).  To run SwitchMaster
  53. you will need to have installed that level or greater of the emx
  54. runtime libraries.  The required DLL's are not included here.  You can
  55. find the required DLL's at
  56.  
  57.     ftp://ftp-os2.nmsu.edu/os2/32bit/unix/emx09a/emxrt.zip
  58.  
  59. - SwitchMaster will only run on OS/2 2.0 and later.
  60.  
  61.  
  62. E-Mailware!
  63. -----------
  64.  
  65. SwitchMaster is E-Mailware.  What that means is that you can do
  66. whatever you want with the program as long as you send me some E-Mail
  67. telling me how you liked it (or didn't like it).  My E-Mail address is
  68. listed at the end of this document.  Other than that, SwitchMaster is
  69. 100% free of charge.  With that price, you also get something
  70. else...NO WARRANTY.
  71.  
  72. Disclaimer (the non-legalese form): If there are bugs in SwitchMaster
  73. that totally destroy your computer (which I highly doubt there are),
  74. don't blame me.  If you use this program, you are doing so at your own
  75. risk.
  76.  
  77.  
  78. Bug reporting
  79. -------------
  80.  
  81. If you do find a bug in SwitchMaster (which I'm sure there are some),
  82. please let me know.  As this is supposed to be a learning experience
  83. for me, I want to find out what I did wrong so I don't do it again.
  84. My E-Mail address is listed at the end of this document.
  85.  
  86.  
  87. Usage
  88. -----
  89.  
  90. SwitchMaster is pretty easy to use.  Just create a program object that
  91. points to whatever directory you put SwitchMaster in and fire it up.
  92.  
  93. NOTE: SwitchMaster expects to see its initialization file in the
  94. same directory that it was started from.  With that in mind, you may
  95. want to specify the SwitchMaster directory in the field marked
  96. 'Working Directory' in the program object settings.
  97.  
  98. Once SwitchMaster is up and running, you should be greeted with the
  99. SwitchMaster main window.
  100.  
  101. The radio buttons grouped under the heading 'Remove From' denote where
  102. you want the task to be removed from.  There you will find three
  103. options:
  104.  
  105.     o Window List
  106.     o Jump Sequence
  107.     o Both
  108.  
  109. Selecting 'Window List' removes the tasks from the Window List only
  110. (i.e. what shows up when you hit CTRL+ESC).  This way you can still
  111. jump to the task via ALT+ESC, but you can't see it in the Window List.
  112.  
  113. Selecting 'Jump Sequence' removes the tasks from the ALT+ESC Jump
  114. Sequence only.  This way you can still see the task in the Window
  115. List, but you can't switch to it using the ALT+ESC keystroke.
  116.  
  117. Selecting 'Both' removes the tasks from both the Window List and the
  118. Jump Sequence so the tasks are completely invisible to OS/2's
  119. switching mechanism.
  120.  
  121. The check boxes grouped under the heading 'Remove' define what tasks
  122. should be removed.  There you will find four options:
  123.  
  124.     o LaunchPad
  125.     o Desktop
  126.     o Folders
  127.     o Minimized Window Viewer
  128.     o SwitchMaster
  129.  
  130. Selecting 'LaunchPad' will remove OS/2 Warp's Launch Pad.  If you are
  131. running an earlier version of OS/2, then selecting this option won't
  132. do anything.
  133.  
  134. Selecting 'Desktop' will remove the Desktop.
  135.  
  136. Selecting 'Folders' will activate the 'folders kludge' (see section
  137. titled _Technical Stuff_)and try to remove any open folders.  Please
  138. let me know how this works on your machine.
  139.  
  140. Selecting 'Minimized Window Viewer' removes the Minimized Window
  141. Viewer.
  142.  
  143. Selecting 'SwitchMaster' removes the SwitchMaster window.  By default,
  144. SwitchMaster is set to only be viewable in the Window List (i.e. it
  145. will be bypassed when using ALT+ESC to switch between windows).  This
  146. option allows you to redfine if SwitchMaster will be included in the
  147. Window List.
  148.  
  149. NOTE: SwitchMaster performs it's magic by looking at a window's title.
  150. If, for instance, you renamed your 'Minimized Window Viewer' to 'Min
  151. Window Viewer', SwitchMaster will not see it.  Perhaps I'll add the
  152. functionality to define window titles in a later release.
  153.  
  154. Taking up the good portion of the lower half of the window is a
  155. listbox titled 'Removed Tasks'.  This window will show you what tasks
  156. are currently being removed.  This window will change when tasks are
  157. opened and closed.
  158.  
  159. to the right of the listbox is a checkbox labeled 'Start Minimized'.  If
  160. you check this box and save the settings (see below), the next time
  161. SwitchMaster is started, it will be started in the minimized state.
  162.  
  163. Below the 'Start Minimized' checkbox is a spin button labeled 'Timer'.
  164. 'Timer' defines how often SwitchMaster should look at the Window List
  165. and take out the offending tasks.  This number can be anywhere from 1
  166. to 10 seconds.
  167.  
  168. The 'File' menu has one option: 'Save Settings'.  Select this when
  169. you've got all the options set up the way you want.  That way the next
  170. time you run SwitchMaster, it will default to those options.
  171.  
  172. The 'Help' menu has one option: 'About SwitchMaster'.  That is pretty
  173. self-explanatory.
  174.  
  175. That's it for what it takes to run SwitchMaster.
  176.  
  177.  
  178. Technical stuff
  179. ---------------
  180.  
  181. As mentioned before, in my evaluation of the other utilities that do
  182. the same sort of thing that SwitchMaster does, I noticed one sorely
  183. lacking feature, that being removing open folders from the Window
  184. list.  After reading up on how OS/2 stores entries in the Window List,
  185. I discovered that there is a reason why this feature hasn't popped up
  186. yet anywhere else...OS/2 doesn't differentiate open folders from other
  187. PM programs!  This makes is difficult to block only the folders
  188. without also turning off other PM programs that are running.
  189.  
  190. The solution: After spending quite a few hours in the debugger trying
  191. to figure out how to make the 'best guess' at telling the difference
  192. between PM apps and folders, I discovered that all open folders had
  193. the same session ID as the Desktop.  Bingo!  The only problem is that
  194. there are other applications that also share the Desktop session ID.
  195. Most notably:
  196.  
  197.     o The Desktop itself
  198.     o The Minimized Window Viewer (also a folder)
  199.     o The LaunchPad (OS/2 Warp only)
  200.     o The Workplace Shell
  201.  
  202. The solution then, was to 'scan' for the Desktop ID and remove
  203. everything with that same ID, except those tasks outlined above.  Yes,
  204. it's a kludge, but it's the best solution I've found so far.  If you
  205. can think of any other way, I'm all ears.
  206.  
  207. The drawback is obvious, if there are other tasks that share the same
  208. session ID as the Desktop that I didn't define above, they also get
  209. taken out of the Window List.  I'll try my best to figure out what
  210. those may be and 'scan' for those entries too. I don't think, however,
  211. there are that many more that need to be worried about.
  212.  
  213.  
  214. Author Info
  215. -----------
  216.  
  217. To reach me and tell me what you think (and/or report a bug), send
  218. your E-Mail off to:
  219.  
  220.     Wes Santee
  221.     wsantee@cyberspace.com
  222.  
  223. Enjoy!
  224.